****************************************************************************************************************************************************************
*REPLICATION MATERIAL FOR
*Fesenfeld, L., Rudolph, L., & Bernauer, T.
* XXX TITLE
*
*Version 1.0, by Lukas Rudolph
*2021-12-20
****************************************************************************************************************************************************************
/*
Datasets used: 
w3_data_SEP_reduced.dta
*/
****************************************************************************************************************************************************************


****************************************************************************************************************************************************************
*This Do-File replicates the tables and figures in main paper and appendix
/*

**** 
*PART 1: Policy Design and Framing Experiment
****

*Main body figures********
Figure 2: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste

Figure 3: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste by combined social norm frame.

*Appendix figures and tables*********
Figure A.3: Effects of attributes on choice in conjoint task

Table A.1: Effects of attributes on rating of conjoint task -- regression output

Table A.2: Effects of attributes on rating of conjoint task by norms treatment -- regression output

Figure A.4: Marginal means of attributes on rating in conjoint task

Figure A.5: Marginal means of attributes by social norm treatments on rating in conjoint task

Figure A.6: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste by a global vs a local social norm frame.

Table A.10, Panel A: Adjustment of p-values for main models with Benjamini-Hochberg procedure

*********
*Part 2: Policy Feedback Experiment
*********

*Main body figures********

Figure 5: Marginal means for citizens’ preference for governmental food waste regulation based on average  marginal component effects of vignette treatments

*Appendix figures and tables*********

Table A.6: Effects of vignette on perceived ambition of companies (Manipulation check) -- regression output

Table A.7: Effects of vignette on general food-waste regulation preferences -- regression
output

Table A.8: Effects of vignette on consumers' perception of self-efficacy to reduce food
waste -- regression output

Table A.9: Effects of vignette on consumers' intentions to reduce their own foodwaste
-- regression output

Table A.10, Panel B: Adjustment of p-values for main models with Benjamini-Hochberg procedure

*********
*Part 3: Additional Descriptive Evidence
*********

*Appendix figures*********

Figure A.7: Citizens’ perceptions of food waste

Figure A.8: Citizens' subjective estimations of food waste contributions compared to objective estimations by the Swiss Federal Office for the Environment

*/
****************************************************************************************************************************************************************

 
****************************************************************************************************************************************************************
*prepare Stata

version 15
set more off
clear all
capture log close

/* if not already installed: install the following Stata packages in order to run this do-file:
ssc install grstyle, replace  //  by Ben Jann
ssc install estout, replace  // by Ben Jann
ssc install coefplot, replace  // by Ben Jann
*/

****************************************************************************************************************************************************************
*set working directory to folder containing the replication data set and subfolders "tab" and "fig" 

*cd " " 


****************************************************************************************************************************************************************
*set global macros for where to save tables and figures
global tab = "tab/"
global fig = "fig/"

 
****************************************************************************************************************************************************************
*set colorstyle grstyle for figures
grstyle init
grstyle set plain, horizontal grid
grstyle set color burd      
grstyle set legend, nobox


****************************************************************************************************************************************************************
*variables used for the analysis

/*
keep PubId w3_treat1 /// respondent id and policy feedback vs. policy design/framing experiment indicator
w3_treat3 w3_treat3 w3_q14 w3_q15x1 w3_q15x2 w3_q16 w3_q17x1 w3_q17x2 w3_q18 w3_q19x1 w3_q19x2 w3_q20 w3_q21x1 w3_q21x2 w3_treat4_1_1_1- w3_treat4_4_5_2  /// policy design/framing experiment
w3_q11 w3_q12x1 w3_q12x2 w3_q12x3 w3_q12x4 w3_q12x5 w3_treat1 w3_treat2x1 w3_treat2x2 w3_treat2x3 w3_treat2x4  /// policy feedback experiment
w3_q6x? w3_q8x? // descriptive evidence
*/

************************************************************************************************************************************************************************************************
**** 
*PART 1: Policy Design and Framing Experiment
****
************************************************************************************************************************************************************************************************

*********
*load data
use w3_data_SEP_reduced.dta, clear

*********
*prepare data for analysis

*keep only conjoint respondents
drop if  w3_treat1!=3

*drop observations with missings in conjoint DVs
foreach x in w3_q14 w3_q15x1 w3_q15x2 w3_q16 w3_q17x1 w3_q17x2 w3_q18 w3_q19x1 w3_q19x2 w3_q20 w3_q21x1 w3_q21x2 {
drop if `x' < 0
}

*rename variables
rename w3_q14 choice1
rename w3_q15x1 rate11
rename w3_q15x2 rate21
rename w3_q16 choice2
rename w3_q17x1 rate12
rename w3_q17x2 rate22
rename w3_q18 choice3
rename w3_q19x1 rate13
rename w3_q19x2 rate23
rename w3_q20 choice4
rename w3_q21x1 rate14
rename w3_q21x2 rate24

*reshape dataset to long format
reshape long choice rate1 rate2 , i(PubId) j(round)

reshape long ///
w3_treat4_1_1     w3_treat4_1_2     w3_treat4_1_3     w3_treat4_1_4     w3_treat4_1_5     ///
w3_treat4_2_1     w3_treat4_2_2     w3_treat4_2_3     w3_treat4_2_4     w3_treat4_2_5     ///
w3_treat4_3_1     w3_treat4_3_2     w3_treat4_3_3     w3_treat4_3_4     w3_treat4_3_5     ///
w3_treat4_4_1     w3_treat4_4_2     w3_treat4_4_3     w3_treat4_4_4     w3_treat4_4_5     ///
, i(PubId round) j(package) string

replace package = "1" if package == "_1"
replace package = "2" if package == "_2"
destring package, replace

*********
*gen rate and choice vars

gen rate = rate1 if package == 1
replace rate = rate2 if package == 2
replace rate = . if rate < 0 

label variable rate "Support for policy (1-7)"

tab choice
rename choice choice_org
gen choice = 1 if choice_org == 1 & package == 1
replace choice = 1 if choice_org == 2 & package == 2
replace choice = 0 if choice_org == 1 & package == 2
replace choice = 0 if choice_org == 2 & package == 1

label variable choice "Choice of policy (0-1)"

***********
*gen attribute levels

foreach x in 1 2 3 4 5 {
gen attr`x' = . 
replace attr`x' = w3_treat4_1_`x' if round == 1
replace attr`x' = w3_treat4_2_`x' if round == 2
replace attr`x' = w3_treat4_3_`x' if round == 3
replace attr`x' = w3_treat4_4_`x' if round == 4
}

fre *attr?
label define attr1 1 "Required by law" 2	"Voluntary measures", replace
label values attr1 attr1	

label define attr2 1 "No increase of foodwaste" 2 "10% decrease" 3 "25% decrease" 4 "50% decrease", replace
label values attr2 attr2	
	
label define attr3 1 "All firms participate" 2 "Half of firms participate" 3 "Few firms participate", replace 	
label values attr3 attr3	

label define attr4 1 "Voluntary report" 2 "Obligatory report" 3 "Obligatory with monitoring", replace	
label values attr4 attr4

label define attr5 1 "No price increase" 2 "2% increase" 3 "5% increase" 4 "10% increase", replace	
label values attr5 attr5


***********
*gen norms vignette

gen vignette = w3_treat3 
label variable vignette "Global or local norms frame"

label define vignette 1 "Control" 2 "International social norm" 3 "National social norm", replace 	
label values vignette vignette 

gen anynorms = w3_treat3 > 1
label variable anynorms "Norms frame"

label define anynorms 0 "Control" 1 "Norms" , replace 	
label values anynorms anynorms 


*************************************************************************************************************************************************************************************
*ANALYSIS Policy Design and Framing Experiment
*************************************************************************************************************************************************************************************

************************
*main body *********
************************

************************
*Figure 2: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste

eststo clear
eststo rate: reg rate ib2.attr1 i.attr? , cluster(PubId)
 
coefplot rate,  byopts(style(compact) cols(1)) xlabel(-.7(.1).7,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1)
graph export $fig\Fig2.tif, replace width(3000)

test 3.attr2=4.attr2 // Wald test on significant difference between 25% and 50% reduction target
 
************************
*Figure 3: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste by combined social norm frame.

eststo clear

eststo ratecontrol: reg rate ib2.attr1 i.attr? if anynorms==0, cluster(PubId)
eststo ratenorms: reg rate ib2.attr1 i.attr? if anynorms==1, cluster(PubId)

coefplot (ratecontrol, msymbol(o)) (ratenorms , msymbol(t)),  byopts(style(compact) cols(1)) xlabel(-.7(.1).7,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1) legend(rows(1) label(2 "No info") label(4 "International/National social norm") region(col(white)))
graph export $fig\Fig3.tif, replace width(3000)

************************
*appendix *********
************************


************************
*Table A.1: Effects of attributes on rating of conjoint task -- regression output

eststo clear
eststo rate: reg rate ib2.attr1 i.attr? , cluster(PubId)
 
esttab rate using $tab\tabA1.tex ///
,   label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N N_clust, label(N "Clusters" )) ///
drop() order (2.attr1 1.attr1) /// 
numbers   nonote 

************************
*Figure A.3: Effects of attributes on choice in conjoint task

eststo clear
eststo choice: reg choice ib2.attr1 i.attr? , cluster(PubId)
 
coefplot choice,  byopts(style(compact) cols(1)) xlabel(-.2(.05).25,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1)
graph export $fig\figA3.png, replace

test 3.attr2=4.attr2 // Wald test on significant difference between 25% and 50% reduction target

************************
*Figure A.4: Marginal means of attributes on rating in conjoint task

eststo clear
reg rate ib2.attr1 i.attr? , cluster(PubId)
eststo rate: margins ib2.attr1 i.attr? , post
 
coefplot rate,  byopts(style(compact) cols(1)) xlabel(3.8(.1)4.7,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1)
graph export $fig\figA4.png, replace width(3000)

************************
*Table A.2: Effects of attributes by subgroups of respondents not receiving the norms frame vs. receiving the international/national norms frame on rating  -- regression output

eststo clear
eststo controlr: reg rate ib2.attr1 i.attr? if anynorms==0, cluster(PubId)
eststo normsr: reg rate ib2.attr1 i.attr? if anynorms==1, cluster(PubId)

esttab  controlr normsr  using $tab\tabA2.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N N_clust, label(N "Clusters" )) ///
drop()  mtitles("Control" "International/National social norm") /// 
numbers   nonote order (2.attr1 1.attr1) 

************************
*Table A.3: Effects of attributes on rating of conjoint task by norms treatment in interaction specification 

eststo clear
eststo norms: reg rate (ib2.attr1 i.attr?)##i.anynorms, cluster(PubId)

esttab  norms  using $tab\tabA3.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N N_clust, label(N "Clusters" )) ///
drop()   /// 
numbers   nonote order (2.attr1 1.attr1) nobaselevels


 
************************
*Figure A.5: Marginal means of attributes by social norm treatments on rating in conjoint task

eststo clear

reg rate ib2.attr1 i.attr? if anynorms==0, cluster(PubId)
eststo ratecontrol: margins ib2.attr1 i.attr? , post
reg rate ib2.attr1 i.attr? if anynorms==1, cluster(PubId)
eststo ratenorms: margins ib2.attr1 i.attr? , post

coefplot (ratecontrol, msymbol(o)) (ratenorms , msymbol(t)),  byopts(style(compact) cols(1)) xlabel(3.8(.1)4.7,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1) legend(rows(1) label(2 "No info") label(4 "International/National social norm") region(col(white)))
graph export $fig\figA5.png, replace width(3000)

************************
*Figure A6: Average marginal component effects of policy design attribute values on citizens’ support for differently designed policy proposals to reduce food waste by a global vs a local social norm frame.

eststo clear
eststo global: reg rate ib2.attr1 i.attr? if vignette==2, cluster(PubId)
eststo swiss: reg rate ib2.attr1 i.attr? if vignette==3, cluster(PubId)

coefplot (global, msymbol(o)) (swiss , msymbol(t)),  byopts(style(compact) cols(1)) xlabel(-.7(.1).7,  grid) label baselevels ytick(2.5 6.5 9.5 12.5, notick glstyle(dash) glpattern(dash)) ///
    xline(0, lstyle(dash)) drop(_cons) order(2.attr1 1.attr1) legend(rows(1) label(2 "International social norm") label(4 "National social norm") region(col(white)))
graph export $fig\figA6.png, replace width(3000)

************************
*Table A.4: Effects of attributes on rating of conjoint task for global vs. swiss norm -- regression output

eststo interact: reg rate (ib2.attr1 i.attr?)##i.vignette if vignette>1, cluster(PubId)

esttab  interact using $tab\tabA4.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N N_clust, label(N "Clusters" )) ///
drop()  ///  
numbers   nonote nobaselevels  



*****************
*Table A.10, Panel A
*p-values for Benjamini-Hochberg adjustment******************************

***rating
reg rate ib2.attr1 i.attr?, cluster(PubId)
matrix X = r(table)
matrix Y = X[4,1..16]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below (drop missing p-values of baseline coefficients)
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (11) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel
	
***choice
reg choice ib2.attr1 i.attr?, cluster(PubId)
matrix X = r(table)
matrix Y = X[4,1..16]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below (drop missing p-values of baseline coefficients)
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (11) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel

***norms
reg rate (ib2.attr1 i.attr?)##i.anynorms, cluster(PubId)
matrix X = r(table)
matrix Y = X[4,1..50]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below (drop missing p-values of baseline coefficients)
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (23) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel




************************************************************************************************************************************************************************************************
**** 
*PART 2: Policy Feedback Experiment
****
************************************************************************************************************************************************************************************************


use w3_data_SEP_reduced.dta, clear

**use only respondents that received the policy feedback experiment
drop if  w3_treat1==3

***clean and prepare dataset

replace w3_q11 =. if w3_q11 < 0
replace w3_q12x1 =. if w3_q12x1 < 0
replace w3_q12x2 =. if w3_q12x2 < 0
replace w3_q12x3 =. if w3_q12x3 < 0
replace w3_q12x4 =. if w3_q12x4 < 0
replace w3_q12x5 =. if w3_q12x5 < 0

replace w3_treat2x1 = 0 if w3_treat1==1
replace w3_treat2x2 = 0 if w3_treat1==1
replace w3_treat2x3 = 0 if w3_treat1==1
replace w3_treat2x4 = 0 if w3_treat1==1

 
*recode dvs

gen regulationpref = (w3_q12x2 + (6 - w3_q12x1))/2
replace regulationpref = w3_q12x2 if regulationpref ==. & w3_q12x2 !=. 
replace regulationpref = (6-w3_q12x1) if regulationpref ==. & w3_q12x1 !=.

recode w3_q12x4 (5=1) (4=2) ( 3=3) (2=4) (1=5), gen(efficacy)


*add meaningful labels

label variable w3_q11 "Perceived ambition of Swiss companies"
label variable w3_q12x1 "Voluntary measures suffice"
label variable w3_q12x2 "Need government regulation"
label variable w3_q12x3 "Enforce company compliance"
label variable w3_q12x4 "Consumer self-efficacy (reverse)"
label variable w3_q12x5 "Consumer future ambition"
label variable efficacy "Consumer self-efficacy"
label variable regulationpref "Preference for government regulation (index)"

label variable w3_treat1 "Any vignette"
label variable w3_treat2x1 "Scope vignette"
label variable w3_treat2x2 "Ambition vignette"
label variable w3_treat2x3 "Oversight vignette"
label variable w3_treat2x4 "Cost vignette"


label define w3_treat1 1 "Control" 2 "Any treatment" , replace
label values w3_treat1 w3_treat1 
tab w3_treat1

label define w3_treat2x1 0 "Control" 1 "All companies" 2 "Half of companies" 3 "Few companies" , replace
label values w3_treat2x1 w3_treat2x1 
tab w3_treat2x1

label define w3_treat2x2 0 "Control" 1 "No increase" 2 "10\% reduction" 3 "25\% reduction" 4 "50\% reduction" , replace
label values w3_treat2x2 w3_treat2x2
tab w3_treat2x2

label define w3_treat2x3 0 "Control" 1 "No reporting/monitoring info" 2 "Reporting and monitoring" , replace
label values w3_treat2x3 w3_treat2x3
tab w3_treat2x3

label define w3_treat2x4 0 "Control" 1 "No price info" 2 "0\% price increase" 3 "10\% price increase" , replace
label values w3_treat2x4 w3_treat2x4
tab w3_treat2x4

 
************************************************************************************************************************************************************************************************
***ANALYSIS Policy Feedback  Experiment
************************************************************************************************************************************************************************************************

***************************
*main paper figures 
***************************

*****************
*Figure 5: Marginal means for citizens’ preference for governmental food waste regulation based on average  marginal component effects of vignette treatments

reg regulationpref  i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r
eststo one: margins w3_treat2x?, post
 
reg regulationpref i.w3_treat1  , r
eststo two: margins w3_treat1, post

coefplot two one , yline(2.5, lstyle(dash)) yline(5.5, lstyle(dash) lpattern(dash))  yline(9.5, lstyle(dash) lpattern(dash))  yline(11.5, lstyle(dash) lpattern(dash))  legend(off) ///
xtitle("Marginal means for regulation of companies (index)") ///
ylabel(1 "Control" 2 "Any treatment" 3 "All companies" 4 "Half of companies" 5 "Few companies" 6 "No increase" 7 "10% reduction" 8 "25% reduction" 9 "50% reduction" 10 "No reporting/monitoring info" 11 "Reporting and monitoring" 12 "No price info" 13 "0% price increase" 14 "10% price increase")

graph export $fig\fig5.tif, replace width(3000)


**********************************
*Supporting information tables 
**********************************

*****************
*Table A.5: Effects of vignette on perceived ambition of companies (Manipulation check) -- regression output
eststo one: reg w3_q11 i.w3_treat1  , r
eststo two: reg w3_q11 i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r

esttab  one two  using $tab\tabA5.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N , label(N  )) baselevels ///
drop()  mtitles("Placebo vs. any treatment" "Vignette full factorial") /// 
numbers   nonote 

*****************
*Table A.6: Effects of vignette on general food-waste regulation preferences -- regression output
eststo one: reg regulationpref i.w3_treat1  , r
eststo two: reg regulationpref i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r

esttab  one two  using $tab\tabA6.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N , label(N  )) ///
drop()   mtitles("Placebo vs. any treatment" "Vignette full factorial") /// 
numbers   nonote 

*****************
*Table A.7: Effects of vignette on consumers' perception of self-efficacy to reduce food waste -- regression output

eststo one: reg efficacy i.w3_treat1  , r
eststo two: reg efficacy i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r

esttab one two using $tab\tabA7.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N , label(N  )) ///
drop()   mtitles("Placebo vs. any treatment" "Vignette full factorial") /// 
numbers   nonote 


*****************
*Table A.8: Effects of vignette on consumers' intentions to reduce their own foodwaste -- regression output

eststo one: reg w3_q12x5 i.w3_treat1  , r
eststo two: reg w3_q12x5 i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r

esttab one two using $tab\tabA8.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N , label(N  )) ///
drop()   mtitles("Placebo vs. any treatment" "Vignette full factorial") /// 
numbers   nonote 

*****************
*Table A.9: Effects of vignette on consumers' intentions to reduce their own foodwaste -- regression output

eststo one: reg w3_q12x3 i.w3_treat1  , r
eststo two: reg w3_q12x3 i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2 , r

esttab one two using $tab\tabA9.tex ///
,  label se(a2) b(a2) replace star(* 0.1 ** 0.05 *** 0.01)  stats(N , label(N  )) ///
drop()   mtitles("Placebo vs. any treatment" "Vignette full factorial") /// 
numbers nonote 


*****************
*Table A.10, Panel B 
*p-values for Benjamini-Hochberg adjustment******************************

***manipulation check
reg w3_q11 i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2, r
matrix X = r(table)
matrix Y = X[4,2..12]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (8) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel

***regulation preferences
reg regulationpref i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2, r
matrix X = r(table)
matrix Y = X[4,2..12]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (8) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel
	
***consumer self-efficacy
reg efficacy i.w3_treat2x1 i.w3_treat2x2 i.w3_treat2x3 i.w3_treat2x4  if w3_treat1==2, r
matrix X = r(table)
matrix Y = X[4,2..12]
matrix list Y
matrix Yt=Y'
matrix list Yt
	*proceed as follows: capture p-values from output saved below
	*sort p-values by size (decending) and rank all p-values
	*calculate adjusted p-value by formula (i/m)*Q, with i being rank of p-value i, m number of p-values to rank (8) and Q being False Discovery Rate (critical values calculated both for an FDR of 0.1 and 0.2)
	*p-values are accepted as statistically significant under B-H for all p-values at or smaller the rank of the last p_i < p_i_adjusted
	*sorting, ranking and calculation of critical values conducted in MS Excel

 
 
*****************
*Figure A.7: Citizens' perceptions of food waste

**proportions of responses on 5-point agreement scale as presented in graphical format in Figure A.7

tab w3_q6x5 if w3_q6x5 >= 1 & w3_q6x5 <6, nol
tab w3_q6x2 if w3_q6x2 >= 1 & w3_q6x2 <6, nol
tab w3_q6x6 if w3_q6x6 >= 1 & w3_q6x6 <6, nol
tab w3_q6x1 if w3_q6x1 >= 1 & w3_q6x1 <6, nol
tab w3_q6x8 if w3_q6x8 >= 1 & w3_q6x8 <6, nol
tab w3_q6x4 if w3_q6x4 >= 1 & w3_q6x4 <6, nol
tab w3_q6x3 if w3_q6x3 >= 1 & w3_q6x3 <6, nol
tab w3_q6x7 if w3_q6x7 >= 1 & w3_q6x7 <6, nol


*****************
*Figure A.8: Citizens' subjective estimations of food waste contributions compared to objective estimations by the Swiss Federal Office for the Environment

**average response on subjective contributions to Food Waste by sector as presented in Figure A.8

foreach x in 2 1 3 5 4 {
sum w3_q8x`x' if w3_q8x`x' >= 0
}

**Figure compares objective estimates of Swiss Federal Office of the Environment to subjective perceptions. Objective estimates are available online from Swiss Federal Ministry of the Environment:
*https://www.bafu.admin.ch/bafu/de/home/themen/abfall/abfallwegweiser-a-z/biogene-abfaelle/abfallarten/lebensmittelabfaelle.html

 
 ******************************
 *END
 ******************************
